﻿using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
using System.IO;

namespace AMS.DeDuplicator.CommonLayer
{
    // provide consistent error handling where possible
    public static class ExceptionHandler
    {
        public static void FileNotFoundException()
        {
            throw new FileNotFoundException("Error: specified file could not be found.");
        }

        public static void ArgumentNullException()
        {
            throw new ArgumentNullException("Error: null parameter not permitted.");
        }

        public static void DirectoryNotFoundException()
        {
            throw new DirectoryNotFoundException("Error: specified directory could not be found.");
        }

        public static void NotExecutedException()
        {
            throw new Exception("can't undo a Command that hasn't been executed");
        }

        public static void AlreadyExecutedException()
        {
            throw new Exception("already executed");
        }

        public static void InvalidFilenameException()
        {
            throw new Exception("invalid filename");
        }

        public static void NotImplementedException()
        {
            throw new NotImplementedException();
        }

        internal static void NoNextException()
        {
            throw new ArgumentOutOfRangeException("iterator does not have next");
        }
    }
}
